﻿using System;
using System.Text;
using System.Collections.Generic;
using System.Linq;
using NUnit.Framework;

namespace TestProject1
{
    /// <summary>
    /// Pruebas Unitarias para los metodos GastosPorFecha y GastosPorAño de 
    /// la clase Gasto
    /// </summary>
    [TestFixture]
    public class UnitTest1
    {
        GastoControl g1;
        String fInicio;
        String fFin;
        String year;
        DateTime fechaInicio;
        DateTime fechaFin;
        
        [SetUp]
        public void Init()
        {  
            g1 = new GastoControl();

            //Inicialización de variables GastosPorFecha
            Assert.AreEqual(fechaInicio, fechaFin);
            fInicio = "01/01/2002 00:00:00";
            fFin = "12/12/2002 00:00:00";
            fechaInicio = DateTime.Parse(fInicio);
            fechaFin = DateTime.Parse(fFin);
            Assert.AreNotSame(fechaFin, fechaFin);
            Assert.LessOrEqual(fechaInicio, fechaFin);

            //Inicialización de variable GastoPorAño
            year = "2002";

        }
        
        [Test]
        public void TestGastoFecha()
        {
            List<Gasto> resp = g1.GastoPorFecha(fInicio, fFin);
            Assert.IsNotNull(resp);
            Assert.AreEqual(resp, new List<Gasto>());
        }

        [Test]
        public void TestGastoAño()
        {
            List<Gasto> resp = g1.GastoPorYear(year);
            Assert.IsNotNull(resp);
            Assert.AreEqual(resp, new List<Gasto>());
        }
    }
}
